Synthesizing Dynamic Programming Algorithms from Linear Temporal Logic Formulae

نویسندگان

  • Grigore Ro
  • Klaus Havelund
چکیده

The problem of testing a linear temporal logic (LTL) formula on a finite execution trace of events, generated by an executing program, occurs naturally in runtime analysis of software. We present an algorithm which takes an LTL formula and generates an efficient dynamic programming algorithm. The generated algorithm tests whether the LTL formula is satisfied by a finite trace of events given as input. The generated algorithm runs in linear time, its constant depending on the size of the LTL formula. The memory needed is constant, also depending on the size of the formula.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Monitoring Execution Traces using Metric Alternating Automata

We present an automata based verification framework to monitor a running system against a high level specification. Our framework includes specification formalisms to express system properties and verification algorithms to check an execution trace of a system against the intended behavior. Linear Temporal Logic (LTL) is a widely used specification language to express temporal properties of a s...

متن کامل

CS422 – Formal Methods in System Design: A Monitor Synthesis Algorithm for Past LTL

A monitor synthesis algorithm from linear temporal logic (LTL) safety formulae of the form φ where φ is a past time LTL formula was presented in [3]. The generated monitors implemented the recursive semantics of past-time LTL using a dynamic programming technique, and needed O(|φ|) time to process each new event and O(|φ|) total space. Some compiler-like optimizations of the generated monitors ...

متن کامل

Runtime Analysis of Linear Temporal Logic Specifications

This report presents an approach to checking a running program against its Linear Temporal Logic (LTL) specifications. LTL is a widely used logic for expressing properties of programs viewed as sets of executions. Our approach consists of translating LTL formulae to finite-state automata, which are used as observers of the program behavior. The translation algorithm we propose modifies standard...

متن کامل

A parallel execution model for Chronolog

Temporal logic has been widely used as a formalism for program specification and verification [9, 12, 13], modelling temporal databases [1, 3, 14] and reasoning about time [8, 19, 20]. In temporal logic, the meanings of formulae depend on an implicit time parameter and elements from different moments in time can be combined through the use of temporal operators. Therefore, temporal logic can mo...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2001